package com.yongoe.ecy.secondNode.convert;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yongoe.ecy.secondNode.controller.vo.excel.SecondNodeExcel;
import com.yongoe.ecy.secondNode.controller.vo.req.SecondNodeReq;
import com.yongoe.ecy.secondNode.controller.vo.res.SecondNodeRes;
import com.yongoe.ecy.secondNode.entity.SecondNode;
import org.mapstruct.Mapper;

import java.util.List;

/**
 * 二级节点 convert
 *
 * @author monad
 * @since 2024/03/10
 */
@Mapper(componentModel = "spring")
public interface SecondNodeConvert {
    /**
     * entity to vo
     */
    SecondNodeReq entity2Req(SecondNode entity);

    SecondNodeRes entity2Res(SecondNode entity);

    SecondNodeExcel entity2Excel(SecondNode entity);

    /**
     * entity to vo List
     */
    List<SecondNodeReq> entity2ReqList(List<SecondNode> list);

    List<SecondNodeRes> entity2ResList(List<SecondNode> list);

    List<SecondNodeExcel> entity2ExcelList(List<SecondNode> list);

    /**
     * entity to vo Page
     */
    Page<SecondNodeRes> entity2ResPage(Page<SecondNode> page);

    /**
     * vo to entity
     */
    SecondNode req2Entity(SecondNodeReq req);

    SecondNode excel2Entity(SecondNodeExcel excel);

    /**
     * vo to entity List
     */
    List<SecondNode> excel2EntityList(List<SecondNodeExcel> list);


}